1. Statement of the Technical Field
The present invention relates to a policy based service differentiation model and more particularly to the management of physical resources in a storage system.
2. Description of the Related Art
The vast majority of network devices process device requests indiscriminately. That is, regardless of the identity of the requester or the type of request, each device request can be processed with equal priority. Given the exponential increase in network traffic across the Internet, however, more recent network-oriented computing devices have begun to provide varying levels of computing services based upon what has been referred to as a xe2x80x9cpolicy based service differentiation modelxe2x80x9d.
In a policy based service differentiation model, the computing devices can offer many levels of service where different requests for different content or services which originate from different requestors receive different levels of treatment depending upon administratively defined policies. In that regard, a service level agreement (SLA) can specify a guaranteed level of responsiveness associated with particular content or services irrespective of any particular requester. By comparison, quality of service (QoS) terms specify a guaranteed level of responsiveness minimally owed to particular requestors.
The policy based service differentiation model is the logical result of several factors. Firstly, the number and variety of computing applications which generate requests across networks both private and public has increased dramatically in the last decade. Each of these applications, however, has different service requirements. Secondly, technologies and protocols that enable the provision of different services having different levels of security and QoS have become widely available. Yet, access to these different specific services must be regulated because these specific services can consume important computing resources such as network bandwidth, memory and processing cycles. Finally, business objectives or organizational goals can be best served when discriminating between different requests rather than treating all requests for computer processing in a like manner.
As device requests flow through the network and ultimately, to a file system, storage systems provide the terminal point of data access. More particularly, in response to any data request originating in a network, a file storage device such as disk media ultimately physically retrieves the requested data. Accordingly, data caching systems at all levels of the network replicate data that ultimately can be physically retrieved from file storage. Like other elements of the network, however, In high request volume circumstances, response times attributable to file storage access can add considerable costs to the overall response time.
Notably, storage centers such as a network attached storage (NAS) or redundant array of inexpensive disks (RAID) systems provide an abstraction layer such that disk assignment and block allocations remain hidden from data requestors. Yet, at some level in each of these storage centers, the allocation of data to particular physical blocks on particular physical storage media must occur. This physical allocation of data to portions of the storage medium can directly relate to which physical disk read arms can be used to access requested data. Still, presently physical device resources in the storage center are allocated indiscriminately without regard to the identity of a data requestor or the type of data requested.
The present invention overcomes the limitations of conventional, nondiscriminatory storage systems and provides a novel and non-obvious discriminatory storage system and method for enforcing a service discrimination policy. In accordance with the present invention, a discriminatory storage system can include storage media having physical resources for accessing content stored in the storage media. A storage system controller can be coupled to the physical resources, the storage system controller provisioning individual ones of the physical resources to respond to requests to access the content. In one aspect of the invention, the storage system can include a NAS and the storage system controller can include a NAS controller. Alternatively, the storage system can include a RAID system and the storage system controller can include a RAID controller.
Notably, a resource monitor can be configured to monitor load metrics for the physical resources. In consequence, a service level policy enforcement processor can be programmed to access service level terms. Service level terms include those rules or obligations which guarantee a certain level of responsiveness or availability according to the identity of a corresponding service level partner, such as a data provider, data consumer, an intermediate component in the path of the data transmission, or the identity of the data itself. For example, the service level terms can include QoS terms or terms from an SLA. Based upon the service level terms and the load metrics, individual ones of the physical resources can be selectively provisioned to respond to requests to access the content stored in the storage media.
Notably, in one aspect of the present invention, one or more pre-programmed block layout processes can be provided. In that case, the service level policy enforcement process can be further programmed to allocate blocks in the storage media using a selected one of the block layout processes according to the service level terms.
In a storage system, a service discrimination policy enforcement method can include monitoring load metrics for physical resources required to access content stored within the storage system. A request to access the content stored within the storage system can be received. A corresponding guaranteed service level can be identified from the request. In consequence, a particular one of the physical resources can be selected to service the request based upon a determination that the selected physical resource can service the request while satisfying the guaranteed service level at a load indicated by the monitored load metrics. Significantly, the physical resources can include those components required to access data stored in the storage system, such as disk arms, disk heads, and the like.
In one aspect of the present invention, the identifying step can include identifying a source for the access request; and, matching the identified source with a guaranteed level of service specified according to QoS terms. In a second aspect of the present invention, the identifying step can include identifying a source for the content; and, matching the identified source with a guaranteed level of service specified in an SLA. In that regard, the method can further include receiving a request to write content to the storage system; identifying from the write request a corresponding guaranteed service level; selecting a particular pre-programmed block allocation process configured to allocate blocks in the storage system; and, servicing the write request using the selected block allocation process.